4d61bc17b9c37a041945a5fde447ac237b759d78,java/java-impl/src/com/intellij/codeInsight/template/postfix/templates/NewExpressionPostfixTemplate.java,NewExpressionPostfixTemplate,expand,#PsiElement#Editor#,31

Before Change


          PsiElementFactory factory = JavaPsiFacade.getInstance(context.getProject()).getElementFactory();
          PsiNewExpression newExpression = (PsiNewExpression)factory.createExpressionFromText(template, context);
          PsiElement replace = ((PsiJavaReference)ref).getElement().replace(newExpression);
          replace.getNode().addLeaf(JavaTokenType.SEMICOLON, ";", null);
          int offset = calculateOffset((PsiNewExpression)replace, accessibility, typeRequiresRefinement);
          editor.getCaretModel().moveToOffset(offset);
        }

After Change


          ASTNode existingSemicolon = statement instanceof CompositeElement 
                                         ? ((CompositeElement)statement).findChildByRole(ChildRole.CLOSING_SEMICOLON) 
                                         : null;
          if (statement == null || existingSemicolon == null) {
            replace.getNode().addLeaf(JavaTokenType.SEMICOLON, ";", null);
          }
          int offset = calculateOffset((PsiNewExpression)replace, accessibility, typeRequiresRefinement);
          editor.getCaretModel().moveToOffset(offset);